document.addEventListener('DOMContentLoaded',function (e) {
    			var level = 0,													//第0关
				throttle,														//函数节流
				step = 2,														//格子数目
				width,															//body宽度
				height,															//body高度
				wh,																//宽度和高度中小的值
				l_001,															//存储id对象的变量
				random_color = '',												//随机颜色
				special_color = '',												//特殊颜色
				color_array = [0,1,2,3,4,5,6,7,8,9,'a','b','c','d','e','f'];	//颜色数组
				
				function init(){												//初始化函数，设置l_001元素的宽高
					l_001 = document.getElementById('l_001');
					width = document.getElementById('body').clientWidth;		//得到body的可视宽度
					height = document.getElementById('body').clientHeight;		//得到body的可视高度
					wh = (width < height) ? width - 20 : height - 20;			//wh的数值等于宽高中较小的值减去20，留下周边空间
					l_001.style.width = wh+'px';								//l_001元素的宽度等于body宽高的较小值
					l_001.style.height = wh+'px';								//l_001元素的高度等于body宽高的较小值
					l_001.style.marginLeft = -(~~(wh/2))+'px';					//设置上下左右居中
					l_001.style.marginTop = -(~~(wh/2))+'px';					//设置上下左右居中
					box(step);													//初始化方块
				}
				function getColor(step){										//获取颜色函数
					for(var i = 0;i < 6;i++){
						var num_1 = ~~(Math.random()*16);										//计算普通颜色值
						//var num_2 = Math.abs((~~(Math.random() * (16 - level))) + num_1 - 15);	//计算特殊颜色值
						random_color += color_array[num_1];										//拼接普通颜色
						//special_color += color_array[num_2];									//拼接特殊颜色
					}
					var arr = random_color.split('');
					var s = ~~(Math.random() * 6);
					arr[s] = (parseInt(arr[s],16) + 1).toString(16);
					special_color = arr.join('');
				}
				function box(z){												//计算方块大小和数量
					var box_wh = 100 / z,boxs = '',special_box = ~~(Math.random() * (z*z));//取特殊盒子
					for(var i = 0;i < z*z;i++){									//循环z*z次，元素字符串化，插入到l_001元素中
						if(i != special_box){									//不等于特殊方块时执行
							boxs += '<div style="width:'+box_wh+'%;height:'+box_wh+'%;background-color:#'+random_color+';"></div>';
						}else{													//等于特殊方块时执行
							boxs += '<div style="width:'+box_wh+'%;height:'+box_wh+'%;background-color:#'+special_color+';" id="yes"></div>';
						}
					}
					l_001.innerHTML = boxs;										//把所有方块插入到l_001元素中
				}
				document.getElementById('l_001').addEventListener('click',function(e){
					var source = e.srcElement || e.target;
					if(source.nodeName = 'DIV'){
						if(!!source.id && source.id == 'yes'){
							level++;
							step++;
							random_color = '',												//随机颜色
							special_color = '',
							getColor();
							init();
						}else{
							alert('当前第'+level+'关');
							window.location.reload(); 
						}
					}
					
				});
				window.addEventListener('resize',function(){					//当窗口大小改变时，充值l_001元素的大小
					clearTimeout(throttle);										//函数节流，防止高速计算，拖慢性能
					throttle = setTimeout(init,500);							//缩放窗口时，延迟500ms执行函数
				});
				getColor();														//颜色初始化
				init();															//程序初始化
				return true;
			},false);